package com.hoe.tsb.block;

/**
 * <p>
 *
 * </p>
 *
 * @author hoe
 * @version 1.0
 * @date 2022/12/3
 */
public interface BlockChainApi {

    /**
     * 获取区块链的块高<br/>
     * Follower收到块高请求后向Leader请求当前块高然后响应到对应的客户端
     * @return 当前块高
     */
    long getHeight();

    /**
     * 根据区块hash查询区块数据
     * @param hash 区块hash
     * @return 区块数据
     */
    Block getBlock(String hash);

    /**
     * 根据溯源Hash查询区块Hash
     * @param traceHash 溯源Hash
     * @return 区块Hash
     */
    String getBlockHash(String traceHash);

}
